$(function () {
    //3秒后隐藏错误提示框
    setInterval(function () {
        $("#msgAlert").remove();
    }, 3000);

    $("#navbar-left li").each(function (index) {
        $(this).click(function () {
            $("li").removeClass("active");
            $("li").eq(index).addClass("active");
        })
    })
});

//图片实时预览
function previewImage() {
    $(".btn-upload").click(function () {
        $("input[type='file']").trigger("click");
    });

    $(".imgFile").change(function () {
        //获取文件信息
        var file = this.files[0];
        var objUrl = getObjectURL(file);
        if (objUrl) {
            $(".imgSrc").attr("src", objUrl);
        }
    });
}

//获取图片url
function getObjectURL(file) {
    var url = null;
    if (window.createObjectURL != undefined) {
        url = window.createObjectURL(file);
    } else if (window.URL != undefined) {
        url = window.URL.createObjectURL(file);
    } else if (window.webkitURL != undefined) { // webkit or chrome
        url = window.webkitURL.createObjectURL(file);
    }
    return url;
}

//表单校验方法
function formValidation() {
    $('form').bootstrapValidator({
        message: 'This value is not valid',
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },
        fields: {
            username: {
                message: '用户名验证失败',
                validators: {
                    notEmpty: {
                        message: '用户名不能为空'
                    },
                    regexp: {
                        regexp: /^[\w_-]{6,20}$/,
                        message: '用户名错误，6到20位(大小写字母,数字, _ , -)'
                    }
                }
            },
            password: {
                validators: {
                    notEmpty: {
                        message: '密码不能为空'
                    },
                    regexp: {
                        regexp: /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/,
                        message: '密码错误，至少包含数字和英文，长度6-20'
                    }
                }
            },
            repassword: {
                validators: {
                    notEmpty: {
                        message: '密码不能为空'
                    },
                    regexp: {
                        regexp: /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/,
                        message: '密码错误，至少包含数字和英文，长度6-20'
                    },
                    identical: {
                        field: 'password',
                        message: '两次密码不一致'
                    }
                }
            }
        }
    });
}

//自定义编译器文件上传
function editorConfig() {
    var E = window.wangEditor;
    var editor = new E('#editor');
    // 下面两个配置，使用其中一个即可显示“上传图片”的tab。但是两者不要同时使用！！！
    editor.customConfig.uploadImgServer = '/article/upload'; // 上传图片到服务器
    // 隐藏“网络图片”tab
    editor.customConfig.showLinkImg = false;
    // 将图片大小限制为 3M
    editor.customConfig.uploadImgMaxSize = 3 * 1024 * 1024;

    // 自定义上传参数
    editor.customConfig.uploadFileName = 'file';

    editor.customConfig.uploadImgHooks = {
        customInsert: function (insertImg, result, editor) {
            //回显
            insertImg(result);
        }
    };

    var $content = $('#content')
    editor.customConfig.onchange = function (html) {
        // 监控变化，同步更新到 textarea
        $content.val(html)
    };
    editor.create();

    // 初始化 textarea 的值
    $content.val(editor.txt.html());


    E.fullscreen.init('#editor');
}

//获取当前时间
function getTime() {
    var myDate = new Date();

    var year = myDate.getFullYear();        //获取当前年
    var month = myDate.getMonth() + 1;   //获取当前月
    var date = myDate.getDate();            //获取当前日


    var h = myDate.getHours();              //获取当前小时数(0-23)
    var m = myDate.getMinutes();          //获取当前分钟数(0-59)
    var s = myDate.getSeconds();

    return year + '-' + getNow(month) + "-" + getNow(date) + " " + getNow(h) + ':' + getNow(m) + ":" + getNow(s);
}

//判断是否在前面加0
function getNow(s) {
    return s < 10 ? '0' + s : s;
}


//判断数据是否为Null或者undefined或者为空字符串
function isEmpty(value) {
    //正则表达式用于判斷字符串是否全部由空格或换行符组成
    var reg = /^\s*$/;
    //返回值为true表示不是空字符串
    return (value === null || value === undefined || reg.test(value))
}